
/*
public class Solution {
    public int missingNumber(int[] nums) {
        //数组nums包含从0到n的所有整数，但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗？
        int res = 0;
        for (int i=0; i<nums.length;i++){
            res^=i;
            res^=nums[i];
        }
        res^=nums.length;
        return res;
    }
}
*/


class Solution {
    public void rotate(int[] nums, int k) {
        //给定一个整数数组 nums，将数组中的元素向右轮转 k 个位置，其中 k 是非负数。
        k %= nums.length;
        reverse(nums, 0, nums.length - 1);
        reverse(nums, 0, k - 1);
        reverse(nums, k, nums.length - 1);
    }
    public void reverse(int[] nums, int start, int end) {
        while (start < end) {
            int temp = nums[start];
            nums[start] = nums[end];
            nums[end] = temp;
            start += 1;
            end -= 1;
        }

    }
}